package studentinformationmanagementsystem.dao;

import studentinformationmanagementsystem.entity.Admin;

import java.util.List;

/**
 * @author 苗庆
 * @version 1.0
 */
public interface AdminDao {
    
    /**
     * 添加管理员
     * @param admin
     * @return
     */
    int insert(Admin admin);

    /**
     * 根据ID更新管理员信息
     * @param admin
     * @return
     */
    int update(Admin admin);

    /**
     * 根据ID删除管理员信息
     * @param admin
     * @return
     */
    int delete(Admin admin);

    /**
     * 查询所有用户
     * @return 所有管理员信息
     */
    List<Admin> queryAll(Admin admin);


    /**
     * 根据管理员ID查询管理员信息
     * @param admin 管理员ID
     * @return 管理员信息
     */
    Admin queryById(Admin admin);


    /**
     * 根据账号查询用户信息
     * @param admin 账号
     * @return 管理员信息
     */
    Admin queryByUsername(Admin admin);


    /**
     * 根据用户名和密码查询用户信息
     * @param
     * @return 用户信息
     */
    Admin queryByUsernameAndPassword(Admin admin);




    /**
     * 查询总记录条数
     */
    Integer queryForPageTotalCount();


    /**
     * 分页查询DAO层方法
     * @param begin    起始记录行数
     * @param pageSize 每页展示数量
     * @return
     */
    List<Admin> queryForPageItems(int begin, int pageSize);
}
